Python 批量提取Excel中的图片,图片文件名按指定列存储

本文介绍了如何使用openpyxl和openpyxl_image_loader库从Excel文件中提取图片,并按指定路径保存。通过遍历Excel的单元格,读取并保存图片,同时处理了可能出现的图片超出单元格边界的异常情况。适用于自动化办公场景,提升数据处理效率。
摘要由CSDN通过智能技术生成

openpyxl 以及 openpyxl_image_loader,conda或者pip无法安装的话,官网下载whl,然后pip安装本地包

【注意】:图片必须在单元格内,不能压过单元格边界

from openpyxl import load_workbook
from openpyxl_image_loader import SheetImageLoader

path = r'C:/Users/an/Desktop/guang2/'   # Excel文件路径
saveDir = "C:/Users/an/Desktop/guang2/tu/"  # 图片存储路径

wb = load_workbook(path + 'a.xlsx')  # Excel文件名
ws = wb['Sheet1']
image_loader = SheetImageLoader(ws)
num = ws.max_row  # 总行数,我也不知道为什么是row

for i in range(2, num+1):  #  从第2行开始,总行数要+1
    try:
        name = ws['A'+str(i)].value  # A列的文件名
        # print(i)
        image = image_loader.get('C'+str(i)) # C列的图片
        image.save(saveDir + name + ".jpg") # 以Ai为名,存图片Ci
    # 排除没有图片,或图片超出单元格的情况
    except ValueError: 
        print("caonm这一行没有图片:" ,i)
'''
测试
image=image_loader.get('C2')  # 提取C2中的图片
image.show()
'''

感谢,参考文章:
自动化办公 | 快速从Excel中提取图片并匹配命名
python - 使用python从Excel文件中提取图像

关键词:提取Excel中的图片、按列存储

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值